// 正则表达式
const RegExp = {
  tel: /^(13[0-9]|14[01456879]|15[0-3,5-9]|16[2567]|17[0-8]|18[0-9]|19[0-3,5-9])\d{8}$/,
  email: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
}

// 手机号验证
const phone = (rule, value, callback) => {
  if (value) {
    setTimeout(() => {
      // Number.isInteger是es6验证数字是否为整数的方法,但是我实际用的时候输入的数字总是识别成字符串
      // 所以在前面加了一个+实现隐式转换
      if (!Number.isInteger(+value)) {
        callback(new Error('请输入数字'))
      } else {
        if (!RegExp.tel.test(value)) {
          callback(new Error('请输入正确的电话'))
        } else {
          callback()
        }
      }
    }, 100)
  } else {
    callback()
  }
}
// 邮箱验证
const email = (rule, value, callback) => {
  if (value) {
    setTimeout(() => {
      if (!RegExp.email.test(value)) {
        callback(new Error('请输入正确的邮箱'))
      } else {
        callback()
      }
    }, 100)
  } else {
    callback()
  }
}
export default {
  phone,
  email
}
